The invention relates to a semiconductor chip for (1) receiving analog inputs representative of primary winding currents of an electrical motor, motor shaft rotation, load shaft rotation or other load movement, and various analog signals, all having a wide range of possible magnitudes, and (2) generating serial digital control output information to be digitally processed and used to control and/or monitor the operation of the motor.
FIG. 2 is a generalized block diagram of a semiconductor chip 10 that is specifically designed to be a general purpose electric motor control chip. The diagram of FIG. 1 discloses both the closest features of the prior art and also the improvements of the present invention.
The prior art features include three pairs of differential inputs 11-1, 11-2 and 11-3 carrying differential voltages V.sub.I1, V.sub.I2 and V.sub.I3 that represent the primary winding currents I.sub.1, I.sub.2, and I.sub.3, respectively. Each differential voltage is applied by a corresponding external differential amplifier (not shown) that measures the output of a current sensor that senses the amount of AC current I.sub.1, I.sub.2, and I.sub.3, respectively, flowing in the corresponding primary windings of a three-phase electric motor. The resulting three AC differential voltages V.sub.I1, V.sub.I2 and V.sub.I3 are applied to the inputs of three comparators 14-1, 14-2, and 14-3, respectively, to convert the AC differential current sense output signals to square wave signals supplied as outputs of chip 10. Those square wave signals can be used to provide early detection of phase changes in the primary winding currents, and that information can be used to improve motor control. The prior system includes window comparators 15-1, 15-2, and 15-3. The outputs of these comparators are supplied as outputs of chip 10 and can be used to compare the amplitudes of the primary currents I.sub.1, I.sub.2 and I.sub.3 with preselected limit values and make suitable corrections to the primary winding currents.
Chip 10 also receives a pair of differential position-indicating signals POSA1 and POSA2 on conductors 12A-1 and 12A-2, and a second pair of differential position-indicating signals POSB1 and POSB2 on conductor pairs 12B-1 and 12B-2. POSA1 represents the value of a sine wave signal representing position of (for example) a load and POSB1 represents the sine of the position-indicating signal that typically is 90 degrees out of phase with POSA1 for the same load. Similarly, POSA2 and POSB2 represent two position-indicating signals from a motor driving the load. Such differential position-indicating signals are applied between the inputs of comparators 23-1 through 23-4, respectively. The outputs of these comparators also are provided as outputs of chip 10. Three pairs of "general purpose" differential analog input signals AN1, AN2, and AN3 are applied by conductor pairs 13-1, 13-2, and 13-3, respectively, to inputs of a multiplexer designated MUX 3. In the prior art, the differential input voltages V.sub.I1, V.sub.I2, and V.sub.I3 are applied to inputs of multiplexers MUX 1, MUX 2, and MUX 3 (designated by numerals 16-1, 16-2, and 16-3), the outputs of which are sampled by sample and hold circuits 18, 19, and 20, respectively. Analog switch 24-1 selectively applies POSA1 or POSA2 to the input of sample and hold circuit 25, which asynchronously samples in response to the signal ASYN to apply the selected analog input signal to an input of analog switch 36-1A. Similarly, analog switch 24-2 selectively applies POSB1 or POSB2 to the analog input of sample and hold circuit 26, which is asynchronously sampled in response to ASYN. Sample and hold circuit 26 applies the sampled signal to an input of analog switch 36-1B. Sampling is in response to the asynchronous signal ASYN. Multiplexer MUX 1 can be switched to select the position-indicating differential signals POSA1 and POSA2 and multiplexer MUX2 can be switched to select the position-indicating differential signals POSB1 and POSB2. Analog switches 36-1A and 36-1B select the outputs of the various sample and hold circuits and apply them to the inputs of three analog-to-digital converters 38, 39 and 40. The output of multiplexer MUX 3 is sampled by sample and hold circuit 20 and applied to the input of a third analog-to-digital converter 40. The outputs ADOUT1, ADOUT2 and ADOUT3 of analog-to-digital converters 38, 39, and 40 are supplied as outputs of motor control chip 10.
Note that the foregoing are the features of the closest prior art. The remaining features of FIG. 2 are provided in accordance with the present invention.
It should be appreciated that the conventional approach for accommodating a wide range of amplitudes of analog input signals in instrumentation data acquisition systems has been to use a programmable gain amplifier to match the amplitude of an input signal to the full input range of an analog-to-digital converter. Conventionally, the gain inputs of the programmable gain amplifier provide a large range of incremental programmable gain input values, to thereby allow optimum amplification of analog input signals without overdriving the programmable gain amplifier. However, programmable gain amplifiers and their control circuits are quite expensive, and typically are subject to offset errors, gain errors, errors which are a function of temperature, and errors caused by power supply variation. In addition to these error sources, an overdriven programmable gain amplifier has a very slow recovery time. All of these error sources could be very critical in the application of obtaining acceptable performance of a general purpose motor control system and could seriously interrupt smooth motor operation. Such interruption of smooth motor operation can be very inconvenient in certain motor-driven positioning systems, such as a precision plotter or the like.
It should be appreciated that prior motor controllers generally have been designed and implemented on PC (printed circuit) boards for specific, rather than general applications. Consequently, the design and implementation costs have been higher than desirable, and certainly much higher than would be the case if a "general purpose" motor controller, applicable to a wide range of electric motor control applications, could, as a practical matter, be economically implemented on one or two integrated circuit chips. However, this has not been achieved, and there remains an unmet need for an economical, versatile, general purpose motor controller system.